package com.dykj.fireFighting.api.base.fireEngine.service;


import com.dykj.fireFighting.api.base.fireEngine.dto.FireEngineDto;
import com.dykj.fireFighting.api.base.fireEngine.entity.FireEngine;
import com.dykj.fireFighting.api.base.fireEngine.vo.EXLIVEFireEngineLocsHistoryVo;
import com.dykj.fireFighting.api.base.fireEngine.vo.EXLIVEFireEngineLocsVo;
import com.dykj.fireFighting.api.base.fireEngine.vo.EXLIVEFireEngineVo;
import com.dykj.fireFighting.api.base.fireEngine.vo.FireEngineVo;
import com.dykj.fireFighting.common.core.service.IBaseService;
import com.dykj.fireFighting.common.core.vo.PageVo;

import java.util.List;

/**
 * 消防车
 *
 * @Author JacksonTu
 * @Date 2021-11-12 13:47:40
 */
public interface IFireEngineService extends IBaseService<FireEngine> {

    /**
     * 消防车-分页列表查询
     *
     * @param fireEngineDto
     * @return
     */
    PageVo<FireEngineVo> queryList(FireEngineDto fireEngineDto);

    /**
     * 获取信息
     *
     * @param carNum 车牌号
     * @return
     */
    FireEngine getFireEngine(String carNum);

    /**
     * 获取车辆授权码
     *
     * @param carNum 车牌号
     * @param pwd
     * @return
     */
    EXLIVEFireEngineVo vLoginSystem(String carNum, String pwd);

    /**
     * 车辆最新位置
     *
     * @param carNum 车牌号
     * @return
     */
    EXLIVEFireEngineLocsVo loadLocation(String carNum);

    /**
     * 轨迹回放
     *
     * @param carNum
     * @param bTime
     * @param eTime
     */
    List<EXLIVEFireEngineLocsHistoryVo> loadHistory(String carNum, Long bTime, Long eTime);

    /**
     * @param
     */
    void batchLoadLocation();


    List<FireEngine> queryFireEngineByUnitId(String unitId);
}

